#include <stdio.h>  
#include <stdlib.h>  
#include <string.h>  
#include <mysql/mysql.h>  

#define MYSQL_HOST    "localhost"
#define MYSQL_USER    "root"
#define MYSQL_PASSWD  "svh123456"
#define DB_NAME "csb"
#define TABLE_NAME "csbsjb"

/*
 * 测试的数据表结构很简单, sfbj,time 两个字段, 代表是否报警，时间
*/

/* 连接mysql */  
void mysqldb_connect(MYSQL *mysql)
{  
    if(!mysql_real_connect(mysql, MYSQL_HOST, MYSQL_USER, MYSQL_PASSWD, DB_NAME, 0, NULL, 0)) {  
        printf("\nFailed to connect:%s\n", mysql_error(mysql));  
    } else {
       printf("\nConnect sucessfully!\n"); 
    }
}   

/* 查询数据 */
void mysqldb_query(MYSQL *mysql)  
{  
    int t;
    char *head = "SELECT * FROM ";
    char query[50] = {0};
    MYSQL_RES *res;
    MYSQL_ROW row; 

    sprintf(query, "%s%s", head, TABLE_NAME);

    t = mysql_real_query(mysql, query, strlen(query));  //如果查询成功，返回0。如果出现错误，返回非0值。

    if (t) {
        printf("Failed to query: %s\n", mysql_error(mysql));  
        return;
    } else {//t=0
        printf("\nQuery successfully!\n");  
    }

    res = mysql_store_result(mysql);
    while (row = mysql_fetch_row(res)) {  
        for(t = 0; t < mysql_num_fields(res); t++) {  
            printf("%s\t", row[t]);  
        }  
        printf("\n");
    }  
    mysql_free_result(res);
} 



/* 断开mysql连接 */ 
void close_connection(MYSQL *mysql)
{
    mysql_close(mysql);
}


int main(int argc, char *argv[])
{  

    // 初始化mysql
    MYSQL *mysql = mysql_init(NULL);           
    if (!mysql) {
        printf("\nMysql init failed.\n");
    }

    // 连接MYSQL
    mysqldb_connect(mysql);


  
    // 查询数据
    mysqldb_query(mysql);

    // 断开连接
    close_connection(mysql);

    return 0;  
}
